/**   
 * @Title: ContractProtocoListDubboService.java 
 * @Package com.betterjr.modules.contract.dubbo 
 * @Description: TODO(用一句话描述该文件做什么) 
 * @author xuzx
 * @date 2017年10月26日 上午11:03:40  
 */
package com.betterjr.modules.contract.dubbo;

import java.util.Map;

import javax.annotation.Resource;

import com.alibaba.dubbo.config.annotation.Service;
import com.betterjr.common.web.AjaxObject;
import com.betterjr.modules.contract.IContractProtocoListService;
import com.betterjr.modules.contract.service.ContractProtocoListService;
import com.betterjr.modules.contract.service.ContractTempStampPlaceService;
import com.betterjr.modules.contract.service.ContractTemplateService;

/** 
 * @ClassName: ContractProtocoListDubboService 
 * @Description: TODO(这里用一句话描述这个类的作用) 
 * @author xuzx
 * @date 2017年10月26日 上午11:03:40 
 *  
 */
@Service(interfaceClass = IContractProtocoListService.class)
public class ContractProtocoListDubboService implements IContractProtocoListService {

    @Resource
    private ContractProtocoListService contractProtocoListService;

    @Resource
    private ContractTemplateService contractTemplateService;

    @Resource
    private ContractTempStampPlaceService contractTempStampPlaceService;

    /** 
     * <p>Overriding Method of webSaveContractProtocol</p>  
     * <p>Description: </p> 
     * @param anMap
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoList#webSaveContractProtocol(java.util.Map) 
     * @author xuzx
     * @date 2017年10月26日 上午11:05:14 
     */
    @Override
    public String webSaveContractProtocol(final Map<String, Object> anMap, final String anRequestNo,
            final String anTemplateFileId, final String anCommonNo) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("协议清单保存成功",
                contractProtocoListService.saveContractProtocol(anMap, anRequestNo, anTemplateFileId, anCommonNo))
                .toJson();

    }

    /** 
     * <p>Overriding Method of webQueryElectronicContract</p>  
     * <p>Description: </p> 
     * @param anParam
     * @param anCustNo
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webQueryElectronicContract(java.util.Map, java.lang.Long) 
     * @author xuzx
     * @date 2017年10月27日 上午11:56:09 
     */
    @Override
    public String webQueryElectronicContract(final Map<String, Object> anParam, final Long anCustNo) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("电子合同模板查询成功", contractTemplateService.queryAllContractTemplate(anParam, anCustNo))
                .toJson();

    }

    /** 
     * <p>Overriding Method of webQueryContractProtocol</p>  
     * <p>Description: </p> 
     * @param anParam
     * @param anRequestNo
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webQueryContractProtocol(java.util.Map, java.lang.String) 
     * @author xuzx
     * @date 2017年10月27日 下午5:17:15 
     */
    @Override
    public String webQueryContractProtocol(final Map<String, Object> anParam, final String anRequestNo,
            final int anPageNum, final int anPageSize, final int anFlag) {
        // TODO Auto-generated method stub
        return AjaxObject
                .newOkWithPage("分页查询协议清单成功！",
                        contractProtocoListService.queryContractProtocolist(anRequestNo, anPageNum, anPageSize, anFlag))
                .toJson();
    }

    /** 
     * <p>Overriding Method of webDelContractProtocol</p>  
     * <p>Description: </p> 
     * @param anId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webDelContractProtocol(long) 
     * @author xuzx
     * @date 2017年10月28日 上午11:00:48 
     */
    @Override
    public String webDelContractProtocol(final long anId) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("列表清单及签署方信息删除成功", contractProtocoListService.delContractProtocol(anId)).toJson();
    }

    /** 
     * <p>Overriding Method of webUpdateContractProtocol</p>  
     * <p>Description: </p> 
     * @param anId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webUpdateContractProtocol(long) 
     * @author xuzx
     * @date 2017年10月28日 上午11:16:31 
     */
    @Override
    public String webUpdateContractProtocol(final Map<String, Object> anMap, final long anId,
            final String customTemplateId, final String commonNo) {
        // TODO Auto-generated method stub
        return AjaxObject
                .newOk("列表清单模板修改成功",
                        contractProtocoListService.updateContractProtocol(anMap, anId, customTemplateId, commonNo))
                .toJson();
    }

    /** 
     * <p>Overriding Method of webqueryInformation</p>  
     * <p>Description: </p> 
     * @param anId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webqueryInformation(long) 
     * @author xuzx
     * @date 2017年10月30日 下午2:29:22 
     */
    @Override
    public String webqueryInformation(final long anCommonNo) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("查询机构信息成功", contractProtocoListService.webQueryInformation(anCommonNo)).toJson();

    }

    /** 
     * <p>Overriding Method of webqueryListSignatories</p>  
     * <p>Description: </p> 
     * @param anId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webqueryListSignatories(long) 
     * @author xuzx
     * @date 2017年10月31日 下午4:30:37 
     */
    @Override
    public String webqueryListSignatories(final long anId) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("查询机构信息成功", contractProtocoListService.webqueryContractProtocolist(anId)).toJson();

    }

    /** 
     * <p>Overriding Method of webContractProtocoListService</p>  
     * <p>Description: </p> 
     * @param anId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webContractProtocoListService(long) 
     * @author xuzx
     * @date 2017年10月31日 下午6:11:58 
     */
    @Override
    public String webContractProtocoListService(final long anId) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("查询协议清单详细信息成功", contractProtocoListService.webqueryContractProtocolist(anId)).toJson();

    }

    /** 
     * <p>Overriding Method of webUpdateIntoPictures</p>  
     * <p>Description: </p> 
     * @param anId
     * @param anCustomTemplateId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webUpdateIntoPictures(long, java.lang.String) 
     * @author xuzx
     * @date 2017年11月1日 下午4:04:23 
     */
    @Override
    public String webQueryIntoPictures(final Long contractProtocoId) {
        // TODO Auto-generated method stub
        return AjaxObject.newOk("PDF略缩图片查询成功", contractProtocoListService.webQueryIntoPictures(contractProtocoId))
                .toJson();
    }

    /** 
     * <p>Overriding Method of webSaveSignatureLocations</p>  
     * <p>Description: </p> 
     * @param anParamMap
     * @param anContractProtocoId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webSaveSignatureLocations(java.util.Map, java.lang.Long) 
     * @author xuzx
     * @date 2017年11月5日 下午2:10:20 
     */
    @Override
    public String webSaveSignatureLocations(final Map<String, Object> anParamMap, final Long anContractProtocoId) {
        return AjaxObject
                .newOk("插入签章位置成功", contractProtocoListService.webSaveSignatureLocation(anParamMap, anContractProtocoId))
                .toJson();
    }

    /** 
     * <p>Overriding Method of webQuerySignatureLocations</p>  
     * <p>Description: </p> 
     * @param anContractProtocoId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webQuerySignatureLocations(java.lang.Long) 
     * @author xuzx
     * @date 2017年11月5日 下午6:52:25 
     */
    @Override
    public String webQuerySignatureLocations(final Long anContractProtocoId) {
        // TODO Auto-generated method stub
        return AjaxObject
                .newOk("查询签章位置成功", contractTempStampPlaceService.queryDetailContractSignatory(anContractProtocoId))
                .toJson();
    }

    /** 
     * <p>Overriding Method of webQueryAssociatedInformation</p>  
     * <p>Description: </p> 
     * @param anContractProtocoId
     * @return 
     * @see com.betterjr.modules.contract.IContractProtocoListService#webQueryAssociatedInformation(java.lang.Long) 
     * @author xuzx
     * @date 2017年11月6日 上午11:58:03 
     */
    @Override
    public String webQueryAssociatedInformation(final Long anContractProtocoId) {
        // TODO Auto-generated method stub
        return AjaxObject
                .newOk("查询协议清单关联信息成功", contractProtocoListService.queryAssociatedInformation(anContractProtocoId))
                .toJson();
    }

}
